Càlcul numèric de l'àrea sota una corba
Author: Bernat Ancochea
Date: setembre / 2009

f(x) = x^(2)
A = Point(xAxis)
B = Point(xAxis)
Intervals = 4 (slider from 0 to 25, step 1)
llista1 = Sequence((x(A) + i * (x(B) - x(A)) / Intervals, 0), i, 0, Intervals)
llista2 = Sequence((x(A) + i * (x(B) - x(A)) / Intervals, f(x(A) + i * (x(B) - x(A)) / Intervals)), i, 0, Intervals)
llista4 = Sequence(Polygon[Element[llista1, i], Element[llista1, i + 1], Element[llista2, i + 1], Element[llista2, i]], i, Intervals, 1, -1)
llista5 = Sequence((x(A) + i * (x(B) - x(A)) / Intervals, f(x(A) + (i - 1) * (x(B) - x(A)) / Intervals)), i, 1, Intervals)
llista6 = Sequence(Polygon[Element[llista1, i], Element[llista1, i + 1], Element[llista5, i], Element[llista2, i]], i, 1, Intervals)
llista7 = Sequence((x(A) + i * (x(B) - x(A)) / Intervals, f(x(A) + (i + 1) * (x(B) - x(A)) / Intervals)), i, 0, Intervals - 1)
llista8 = Sequence(Polygon[Element[llista1, i], Element[llista1, i + 1], Element[llista2, i + 1], Element[llista7, i]], i, 1, Intervals)
llista3 = Sequence(x(A) + i * (x(B) - x(A)), i, 0, Intervals)
llista9 = Sequence(Midpoint[Element[llista1, i], Element[llista1, i + 1]], i, 1, Intervals)
llista10 = Sequence((x(Element[llista1, i]), f(x(Element[llista9, i]))), i, 1, Intervals)
llista12 = Sequence((x(Element[llista1, i + 1]), f(x(Element[llista9, i]))), i, 1, Intervals)
llista11 = Sequence(Polygon[Element[llista1, i], Element[llista1, i + 1], Element[llista12, i], Element[llista10, i]], i, 1, Intervals)
trapezis = Sum(llista4)
superior = Sum(llista8)
inferior = Sum(llista6)
mitjos = Sum(llista11)
text1: "Suma inferior = " + inferior
text2: "Suma superior = " + superior
text3: "Suma dels trapezis = " + trapezis
text4: "Suma dels mitjos = " + mitjos
opció = 1 (slider from 1 to 4, step 1)